package main

import (
	"fmt"
	"math/rand"
	"time"
)

// ==========================作业一=======================================
// 打印九九乘法表。如果可以要求间隔均匀。
func Multiplication_table() {
	for i := 1; i <= 9; i++ {
		for j := 1; j <= i; j++ {
			if i == 1 {
				fmt.Printf("%d*%d=%-3d", j, i, i*j)
			} else {
				fmt.Printf("%d*%d=%-3d", j, i, i*j)
			}

		}
		fmt.Println()
	}
}

// ===============================作业二===========================================
// 随机生成100以内的20个非0正整数，打印出来。对生成的数值，第单数个（不是索引）累加求和，第偶数个累乘求积。打印结果
func RandNum() {
	//生成随机数种子
	var x int = 1
	var y int = 0
	rd := rand.New(rand.NewSource(time.Now().UnixMicro()))
	for i := 0; i < 19; i++ {
		num := rd.Intn(100) + 1 //1-100
		if num&1 == 0 {
			x *= num
		} else {
			y += num
		}

	}
	fmt.Printf("单数总和：%d , 偶数求积： %d\n", y, x)
}

// ==================================作业三==========================
// 打印100以内的斐波那契数列
func Fbnl() {
	//费波纳列  0 1 1 2 3 5 8
	var x uint = 0
	var y uint = 1
	for i := 0; i < 100; i++ {
		x, y = y, x+y
		fmt.Printf("%d  ", x)
	}
}

func main() {
	Fbnl()
}
